package com.hyt.it.ogt.ks.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hyt.it.ogt.ks.enums.log.WebsocketMsgSendState;
import com.hyt.it.ogt.ks.model.entity.ApplyCheck;
import com.hyt.it.ogt.ks.model.entity.ApplyCheckMsg;
import com.hyt.it.ogt.ks.model.entity.CandidateLogOther;

import java.util.List;

/**
 * <p>
 * 审核消息发送记录表 服务类
 * </p>
 *
 * @author zhoumiao
 * @since 2022-12-19
 */
public interface IApplyCheckMsgService extends IService<ApplyCheckMsg> {

    /**
     * 更新考生接收审核消息的状态 状态为已收到时 数据会被删除
     *
     * @param examId 考试id
     * @param candidateId 考生id
     * @param eventType 事件类型
     * @param operateType 操作类型
     * @param state 审核状态
     * @param msgState 消息状态
     */
    boolean updateMsgSendState(String examId, String candidateId, int eventType, int operateType, int state, WebsocketMsgSendState msgState);

    /**
     * 新增一条审核后消息记录
     *
     * @param applyCheck 审核记录
     * @param msgState 消息发送状态
     */
    void add(ApplyCheck applyCheck, WebsocketMsgSendState msgState);
}
